Semi-automatic Generation of Parallelizable Patterns from Source Code Examples
نویسندگان
چکیده
Generation of program patterns from source code is a difficult, time consuming and error-prone process when performed by programmers. We describe an implemented system which generates patterns from an abstract syntax tree with interaction by the user. Our approach is based on creating intermediate pattems by exploring d.m dependencies in the source code and allowing the user to change andor eliminate parts of it in order to create a final pattern. We describe the architecture of our system as well as the pattem language used, and illustrate our upproach with examples.
منابع مشابه
A Source Code Generation Support System Using Design Pattern Documents Based on SGML
Applying design patterns to design of an application makes it robust against issues related to extensibility and maintainability. However, currently, a designer must apply structures and constraints of design patterns to an application by hand, therefore mistakes can occur often. We have proposed a notation using SGML for describing design patterns and a support system for design patterns. We a...
متن کاملA Catalog of Patterns for Program Generation
Generation of source code is becoming a more and more important tool for software engineering, especially in the context of model drien development and MDA. While it is possible in theory to „generate code“ just using printf, this approach is insufficient in all but the most trivial cases. However, there are several alternatives. This paper introduces a set of patterns that describe the most co...
متن کاملSemi-automatic Parallelization of Java Applications
Some types of time-consuming computations are naturally parallelizable. To take advantage of parallel processing, however, applications must be explicitly programmed to use specific libraries that share the workload among multiple (generally distributed) processors. In this paper, we present a set of Java tools that allow us to parallelize some types of computationally-intensive Java applicatio...
متن کاملSemi-Automatic Instrumentation of Critical Distributed Applications: The eMIVA Toolkit
The approach presented in this paper aims to support developers by delivering methods and IDE-based tools for semi-automatic source code instrumentation that improve efficiency and consistency of the instrumentation process, and thus reduces the overall effort to be put into instrumentation. Our solution focuses on code generation for logging and performance monitoring purposes. The resulting t...
متن کاملPAP Recognizer: A Tool for Automatic Recognition of Parallelizable Patterns
Techniques for Automatic Program Comprehension can play a crucial role in overcoming limitations of existing tools for the automatic parallelization of programs for distributed-memory architectures. Uses of a program recognition-based parallelization procedure could range from the automatic selection of a data distribution , via the automatic selection of sequences of optimizing transformations...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1997